function colony = DisplayCells(colony, fig_handle, options)

% Default options
%.........................................................
if nargin < 3
    options{1} = 1; % Display text label?
end
textLabelOption = options{1};

% Check colony for cells
%...........................................................
if ~isfield(colony, 'cell')
    colony.edges = [];
end
if isempty(colony.cell)
    errordlg('No cells. Find cells first!');
    return;
end
cell = colony.cell;

% Define useful local variables
%...............................................................
bounds = colony.bounds;
image = colony.image{end}';

if nargin < 2
    fig_handle = figure();
    im_handle = imshow(image, []);
    imscrollpanel(fig_handle, im_handle);
    immagbox(fig_handle, im_handle);
else
    figure(fig_handle);
end
hold on;
        
if textLabelOption
    for i=1:length(cell)
%        if ishandle(cell(i).text_handle)
%            delete(cell(i).text_handle)
%        end
        XPos = bounds(cell(i).frameID(1)) + 1/2*(bounds(2)-bounds(1)) - 10;
        YPos = cell(i).middleX(1);
        %cell(i).text_handle = text(XPos, YPos, num2str(i), 'Color', 'w');
        text(XPos, YPos, num2str(i), 'Color', 'w');
    end
end
colony.cell = cell; 
